Landscape Smoothing of Numerical Permutation Spaces in Genetic Algorithms

ثبت نشده
چکیده

The recent popularity of genetic algorithms (GA’s) and their application to a wide range of problems is a result of their ease of implementation and flexibility. Evolutionary techniques are often applied to optimization and related search problems where the fitness of a possible result is easily established. Although many landscapes are searched quickly, there are those, such as permutation landscapes, that are particularly challenging to the GA approach. This paper suggests an alternative approach, called landscape smoothing, to searching numerical permutation landscapes. In addition, the paper demonstrates that this approach is more effective than the usual schemes since it smoothes the original landscape in a way that allows GA exploitation to occur naturally using standard mutation and crossover operators. INTRODUCTION The recent popularity of genetic algorithms (GA’s) and their application to a wide range of problems is a result of their ease of implementation and flexibility. Evolutionary techniques are often applied to optimization and related search problems in which the fitness of a potential result is easily established. Problems of this type are generally very difficult if not NP-hard [3]. The ability to find a reasonable solution to these problems within an acceptable time constraint is clearly desirable. Genetic algorithms represent a promising approach to these complex problems. Genetic algorithms represent solutions to problems as chromosomes, a string of values that indicate the proposed solution. Some chromosomes have numerical significance, as when the chromosome represents the rows, columns, and diagonals of a magic square which must be summed. In others, like a traveling salesman problem, the values in the chromosome simply represent a sequence of cities. For many problems the chromosome is a permutation of a range of values. There is an inherent difficulty associated with such permutation chromosomes due to the fact that attempting to apply a normal crossover operation to two chromosomes often results in a string that is not another permutation. As a result specialized permutation crossover operators have been developed. The difficulty with these operators is that even though they result in a new permutation, in many cases its relationship to the original two parents is minimal. Two highly fit parents often generate less fit children. Permutation chromosome landscapes are extremely rough and even though GA’s explore these thoroughly, exploitation (i.e. hill climbing) is often ineffective. Consequently, solutions generated are hit-and-miss and seldom optimal. This paper discusses an approach to numerical permutation spaces that uses realvalued chromosomes, rather than integer, that eventually evolve into integer permutations. This approach does not suffer from problems associated with permutation chromosomes such as specialized permutation crossovers and is often much more effective and efficient than the standard approach. To demonstrate this strategy, the 4 X 4 magic square problem is used. This problem is investigated using both real and integer genomes for comparison purposes. Each solution to the problem is a permutation of the integers 1 through 16. There are 880 unique magic squares (plus rotations) out of 16! possibilities. This problem is an example of a multi-model case in which there are many solutions of equal quality. BACKGROUND John Holland developed genetic algorithms in the 1960’s to study biological adaptation and possible ways this could be simulated by computer systems. In his innovative 1975 book Adaptation in Natural and Artificial Systems, Holland introduced population-based algorithms together with the closely associated concepts of chromosomes, crossover operators, and mutation [6]. In this book he made the first attempt to analyze evolutionary computation theoretically by studying the concept of schemas. This original work, together with research by others such as Rechenberg [10], resulted in the creation of many different branches of evolutionary computation which, in addition to genetic algorithms, includes work in genetic programming [7], evolution strategies [10], and attempts to justify biological evolutionary theories using computer simulation [1,5]. Pioneering work by these researchers has resulted in techniques for addressing some of the hardest problems faced today, many of which have no polynomial-time solutions and can only be addressed using heuristics, genetic algorithms, and other schemes that generate reasonable, but not necessarily optimal, solutions. Problems that have solutions which are naturally encoded with permutation chromosomes, such as a traveling salesman problem, have also been extensively studied. In many cases specialized crossover operators (also known as sequencing operators) such as Partially Mapped Crossover [4], Order Crossover [2], Uniform Order Crossover [2] and Edge Recombination [12] have been developed to facilitate the evolutionary process. These operators guarantee that a child resulting from the mating of two permutation parents will also be a proper permutation. The effectiveness of these operators has been shown to be problem dependent [11]. In other words, determining the most appropriate sequencing operator is not a trivial task. MAGIC SQUARES Magic squares have been known for thousands of years. From the 3,000 year old Lo Shu in China through Albrecht Durer’s magic square in the engraving “Melancholia” (shown in Figure 1) to Benjamin Franklin’s 8 X 8 magic square, laymen as well as mathematicians have been captivated with the search for new squares. A magic square is an N X N array which is filled with a permutation of the integers from 1 to N 2 such that each row, each column, and each diagonal sum to the same total. The authors have promoted interest in magic squares by continuing to use them in a Figure 1. Melancholia variety of projects within the computer science program. MAGIC SQUARE USING PERMUTATIONS – The Students’ Approach In a genetic algorithms course one of the authors assigned a project that required the students to design a genetic algorithm to search for magic squares. The students developed a wide range of approaches that included specialized crossover and mutation operators. In almost all approaches the students utilized permutation-based chromosomes. In a 4 X 4 magic square the first four digits of the chromosome represented the first row, the second four digits, the second row, and so on. Fitness was calculated by determining the difference of the sum of the rows, columns and diagonals from the magic number (34 in the case of a 4 X 4). When this “error” became zero the resulting square is “magic.” Initial runs by the students were seldom successful. Thus, several students developed “intelligent” operations. An example of an intelligent mutation operation is the swap of a “large” item from the intersection of row and column that have maximum sums with a small item from the intersection of the row and column that have minimum sums, which was much more successful than a random swap. The problem with these intelligent approaches is that the strategy moves away from a standard genetic algorithm and slowly becomes a specialized search algorithm. The students also utilized several previously developed permutation crossover operations which have been used in other problems, such as traveling salesman problems, which also require a permutation of values as a solution. These include but are not limited to the Order Crossover (OX), the Partially Mapped Crossover (PMX), and the Cycle Crossover (CX). Each of these crossover operators begin with two permutation parent chromosomes and generate a new permutation child. For example, consider the Order Crossover as implemented for magic squares. This operator randomly selects two cut points within one of the parent chromosomes. The values of the first parent that lie between these two points, inclusive, are copied into the child chromosome in the same relative position. The empty positions in the child chromosome are filled from the second parent, from left to right, in the order that they occur in the second parent, ensuring no repeated values. For example, suppose that the first parent is (6 2 5 4 1 3 8 7) and the second is (4 1 6 3 2 7 5 8). If the two cut point subscripts selected are 2 and 5, the subsequence (5 4 1 3) is copied to the child giving (? ? 5 4 1 3 ? ?). The remaining positions are filled with the missing numbers 2, 6, 7, and 8 in the order that they appear in the second parent, i.e. 6, 2, 7, 8, giving (6 2 5 4 1 3 7 8) as the resulting child chromosome. Using this or one of the other similar crossovers together with a simple swap mutation operation (swap two elements in the permutation) was the basic student approach. FITNESS FUNCTION The fitness function used for this project computes the closeness of a chromosome to a correct magic square. It first calculates the sum of each of the rows, columns, and diagonals. The difference between each sum and the magic_sum, 34 for a 4 X 4 square, is determined and accumulated in total_err. Since GALib maximizes the fitness function, the function returns (5000.0 – total_err) to minimize total_err during execution. To analyze and compare the progress of the genetic algorithm, three variations of the program were developed, the only change being the type of permutation crossover operation used (OX, PMX, and CX). The program was run twenty-five times, with the average fitness of the twenty-five runs computed at the end of every one-hundred generations. The results are shown in the graph of Figure 2. The graph shows that the chromosomes start at a low fitness and rapidly, within a few hundred generations, increase in fitness to around 50% of the target value (total error = 0). At this point the rate of improvement begins to slow and levels off at 70%. These algorithms rarely find a correct magic square.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

FINDING HIGHLY PROBABLE DIFFERENTIAL CHARACTERISTICS OF SUBSTITUTION-PERMUTATION NETWORKS USING GENETIC ALGORITHMS

In this paper, we propose a genetic algorithm, called GenSPN, for finding highly probable differential characteristics of substitution permutation networks (SPNs). A special fitness function and a heuristic mutation operator have been used to improve the overall performance of the algorithm. We report our results of applying GenSPN for finding highly probable differential characteristics of Ser...

متن کامل

MILP Formulation and Genetic Algorithm for Non-permutation Flow Shop Scheduling Problem with Availability Constraints

In this paper, we consider a flow shop scheduling problem with availability constraints (FSSPAC) for the objective of minimizing the makespan. In such a problem, machines are not continuously available for processing jobs due to preventive maintenance activities. We proposed a mixed-integer linear programming (MILP) model for this problem which can generate non-permutation schedules. Furthermor...

متن کامل

A Novel Intrusion Detection Systems based on Genetic Algorithms-suggested Features by the Means of Different Permutations of Labels’ Orders

Intrusion detection systems (IDS) by exploiting Machine learning techniques are able to diagnose attack traffics behaviors. Because of relatively large numbers of features in IDS standard benchmark dataset, like KDD CUP 99 and NSL_KDD, features selection methods play an important role. Optimization algorithms like Genetic algorithms (GA) are capable of finding near-optimum combination of the fe...

متن کامل

Economic Lot Sizing and Scheduling in Distributed Permutation Flow Shops

This paper addresses a new mixed integer nonlinear and linear mathematical programming economic lot sizing and scheduling problem in distributed permutation flow shop problem with number of identical factories and machines. Different products must be distributed between the factories and then assignment of products to factories and sequencing of the products assigned to each factory has to be d...

متن کامل

Fuzzy Multi-objective Permutation Flow Shop Scheduling Problem with Fuzzy Processing Times under Learning and Aging Effects

In industries machine maintenance is used in order to avoid untimely machine fails as well as to improve production effectiveness. This research regards a permutation flow shop scheduling problem with aging and learning effects considering maintenance process. In this study, it is assumed that each machine may be subject to at most one maintenance activity during the planning horizon. The objec...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003